//
//  MessageUtil.m
//  fitnessmanage
//
//  Created by wujian on 2017/12/22.
//  Copyright © 2017年 zongquankeji. All rights reserved.
//

#import "MessageUtil.h"

static MessageUtil *messageUtil = nil;

@implementation MessageUtil

+ (instancetype)shareInstance{
    
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        
        messageUtil = [[MessageUtil alloc] init];
    });
    
    return messageUtil;
}


/**
 给消息加上一些自定义的东西
 */
//-(IMAMsg *)getJsonStrWithMsg:(IMAMsg *)msg andType:(NSString *)type andOtherMsgShow:(NSString *)otherMsg andToUserId:(NSString *)otherUserId{
//
//    //存放自定数据字典
//    NSMutableDictionary *dataDict = [[NSMutableDictionary alloc] init];
//
//    UserAccount *user = [UserAccount account];
//
//    //显示把User对象解析出来
//    NSMutableDictionary *userDict = [[NSMutableDictionary alloc] init];
//    [userDict setValue:user.TLSToken forKey:@"myUserId"];
//    [userDict setValue:user.Pic forKey:@"myHeadIcon"];
//    [userDict setValue:user.RealName forKey:@"myNickName"];
//
//    //把要发送对象的头像从数据文件中找出来 如果没有就置空
//    MsgConversationModel *msgConversationModel = [MsgConversationModel msgConversation];
//    NSMutableDictionary *otherDict = [msgConversationModel.convDict objectForKey:otherUserId];
//    if (otherDict) {
//
//        [userDict setValue:[otherDict objectForKey:@"userId"] forKey:@"otUserId"];
//        [userDict setValue:[otherDict objectForKey:@"userPic"] forKey:@"otHeadIcon"];
//        [userDict setValue:[otherDict objectForKey:@"nickName"] forKey:@"otNickName"];
//    }
//    else{
//
//        [userDict setValue:@"" forKey:@"otUserId"];
//        [userDict setValue:@"" forKey:@"otHeadIcon"];
//        [userDict setValue:@"" forKey:@"otNickName"];
//    }
//
//    //转换成Json字符串
//    NSString *messageUserBeanJson = [[NSString alloc] initWithData:[NSJSONSerialization dataWithJSONObject:userDict options:NSJSONWritingPrettyPrinted error:nil] encoding:NSUTF8StringEncoding];
//
//
//    //把头像 昵称数据保存起来
//    [dataDict setObject:messageUserBeanJson forKey:@"messageUserBean"];
//
//    //消息类型，目前公司项目用不到，但是先预留
//    [dataDict setObject:type forKey:@"messageType"];
//
//    //这个字段是用于社交项目，比如专属，游戏，公司目前也用不上，做预留
//    [dataDict setObject:otherMsg forKey:@"message"];
//
//    //最后整体转换为NSData
//    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dataDict options:NSJSONWritingPrettyPrinted error:nil];
//    NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
//
//    //给Msg加上自定义Data数据
//
//    TIMCustomElem * custom_elem = [[TIMCustomElem alloc] init];
//
//    [custom_elem setData:[jsonStr dataUsingEncoding:NSUTF8StringEncoding]];
//
//    [msg.msg addElem:custom_elem];
//
//    return msg;
//}


/**
 根据消息得到用户信息的拓展数据
 
 @param msg 消息
 @return 用户信息
 */
//-(NSDictionary *)getMessageUserBeanWithMsg:(IMAMsg *)msg{
//    
//    int cnt = [msg.msg elemCount];
//    
//    for (int i = 0; i < cnt; i++) {
//        
//        TIMElem * elem = [msg.msg getElem:i];
//        
//        if ([elem isKindOfClass:[TIMCustomElem class]]) {
//            
//            TIMCustomElem *customElem = (TIMCustomElem *)elem;
//            
//            //得到解析的对象
//            
//            NSDictionary *dict = [self getDictWithData:customElem.data];
//            
//            if (dict) {
//                
//                NSDictionary *messageUserBean =  [self getDictWithData:[[dict objectForKey:@"messageUserBean"] dataUsingEncoding:NSUTF8StringEncoding]];
//             
//                return messageUserBean;
//            }
//            else{
//                
//                return nil;
//            }
//        }
//    }
//    
//    return nil;
//}
//
//
///**
// 根据消息得到消息的类型
// @param msg 消息
// @return 消息拓展类型 社交要用到
// */
//-(NSString *)getTypeWithMsg:(IMAMsg *)msg{
//    
//    int cnt = [msg.msg elemCount];
//    
//    for (int i = 0; i < cnt; i++) {
//        
//        TIMElem * elem = [msg.msg getElem:i];
//        
//        if ([elem isKindOfClass:[TIMCustomElem class]]) {
//            
//            TIMCustomElem *customElem = (TIMCustomElem *)elem;
//            
//            //得到解析的对象
//            NSDictionary *dict = [self getDictWithData:customElem.data];
//            
//            if (dict) {
//                
//                NSString *type = [dict objectForKey:@"messageType"];
//                
//                return type;
//            }
//        }
//    }
//    
//    return nil;
//}
//
//
//
///**
// 根据消息得到其他（专属，游戏）的内容
// 
// @param msg Msg
// @return 其他内容
// */
//-(NSString *)getOtherMsgWithMsg:(IMAMsg *)msg{
//    
//    int cnt = [msg.msg elemCount];
//    
//    for (int i = 0; i < cnt; i++) {
//        
//        TIMElem * elem = [msg.msg getElem:i];
//        
//        if ([elem isKindOfClass:[TIMCustomElem class]]) {
//            
//            TIMCustomElem *customElem = (TIMCustomElem *)elem;
//            
//            //得到解析的对象
//            NSDictionary *dict = [self getDictWithData:customElem.data];
//            
//            if (dict) {
//                
//                NSString *type = [dict objectForKey:@"message"];
//                
//                return type;
//            }
//        }
//    }
//    
//    return nil;
//}
//
//
///**
// * 根据ID保存MsgConversation对象
// **/
//-(void)saveConversationModelWithId:(NSString *)userId andUserModel:(UserAccount *)userModel{
//    
//    
//    MsgConversationModel *msgConversationModel = [MsgConversationModel msgConversation];
//    
//    NSMutableDictionary *otherDict = [msgConversationModel.convDict objectForKey:userId];
//    
//    if (!otherDict) {
//        
//        otherDict = [[NSMutableDictionary alloc] init];
//    }
//    
//    [otherDict setObject:userModel.TLSToken forKey:@"userId"];
//    
//    [otherDict setValue:userModel.Pic forKey:@"userPic"];
//    
//    [otherDict setValue:userModel.RealName forKey:@"nickName"];
//    
//    [msgConversationModel.convDict setObject:otherDict forKey:userId];
//    
//    //把数据保存起来
//    [MsgConversationModel saveMsgConversation:msgConversationModel];
//}
//
//
//
////根据Data转换成字典
//-(NSDictionary *)getDictWithData:(NSData *)data{
//    
//    
//    NSString *receiveStr = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
//    
//    if (!receiveStr) {
//        
//        return nil;
//    }
//    
//    NSData * receiveData = [receiveStr dataUsingEncoding:NSUTF8StringEncoding];
//    
//    NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:receiveData
//                                                         options:NSJSONReadingMutableContainers
//                                                           error:nil];
//    
//    return dict;
//}

@end
